package com.buss.core.service;

import java.io.Serializable;

import com.buss.core.model.Role;
import com.buss.core.persistence.OrderBy;
import com.buss.core.persistence.ResultList;

public interface RoleService extends Serializable {


	/**
	 * 新增用户角色信息
	 * @param adminRole
	 */
	public void saveRole(Role role);
	
	/**
	 * 修改用户角色信息
	 * @param adminRole
	 */
	public void editRole(Role role);
	
	/**
	 * 删除指定用户角色信息
	 * @param id
	 */
	public void deleteRole(Long[] ids);
	
	/**
	 * 获取指定的用户角色信息
	 * @param id
	 * @return
	 */
	public Role loadRole(Long id);
	
	/**
	 * 获取所有用户角色信息
	 * @return
	 */
	public ResultList<Role> queryRole(String companyId,OrderBy orderBy);
	
	public ResultList<Role> queryRolesByUser(Long userId,OrderBy orderBy);
	
	/**
	 * 根据角色拥有用户信息
	 * @param user
	 */
	public void updateRoleUser(Role role);
	
	/**
	 * 更新角色拥有的菜单权限信息
	 * @param role
	 */
	public void updateRoleMenu(Role role);
	
}
